
package org.darcy.entity;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import org.darcy.entity.business.BusinessContract;
import org.darcy.entity.work.WorkFlowObject;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

@Schema(description = "CheckPlan: 采样计划")
@TableName(value = "check_plan")
@Getter
@Setter
public class CheckPlan extends WorkFlowObject implements Serializable {

	private static final long serialVersionUID = 1L;

	@Schema(description = "表单编号")
	@TableField(value = "`form_no`")
	private String formNo;

	@Schema(description = "委托单位id")
	@TableField(value = "`client_id`")
	private Integer clientId;

	@Schema(description = "委托性质")
	@TableField(value = "`project_type`")
	private String projectType;

	@Schema(description = "检测费用合计")
	@TableField(value = "`check_fee`")
	private Float checkFee;

	@Schema(description = "组织验收、编制报告等费用")
	@TableField(value = "`other_fee`")
	private Float otherFee;

	@Schema(description = "备注")
	@TableField(value = "`remark`")
	private String remark;

	@Schema(description = "创建时间")
	@TableField(value = "`create_time`")
	private Date createTime;

	@Schema(description = "更新时间")
	@TableField(value = "`update_time`")
	private Date updateTime;

	@Schema(description = "删除标识0：删除；1：存在")
	@TableField(value = "`del_flag`")
	private Integer delFlag;

	/// 扩展属性

	@Schema(description = "委托单位")
	@TableField(exist = false)
	private String clientName;

	@Schema(description = "合同信息")
	@TableField(exist = false)
	private BusinessContract contract;

	@Schema(description = "采样计划详情列表")
	@TableField(exist = false)
	private List<CheckPlanDetail> detailList;

	@Schema(description = "总费用合计")
	@TableField(exist = false)
	private Float totalFee;
	
	@Schema(description = "单条记录详情")
	@TableField(exist = false)
	private String detail;

}
